package projecto.pkgfinal;

import java.io.Serializable;

public class Consulta implements Serializable{
    private int numeroConsulta;
    private Utente utente;
    private Medico medico;
    private Especialidade especialidade;
    private String data;
    private String hora;
    private double custo;

    public Consulta(int numeroConsulta, Utente utente, Medico medico, Especialidade especialidade, String data, String hora, double custo) {
        this.numeroConsulta = numeroConsulta;
        this.utente = utente;
        this.medico = medico;
        this.especialidade = especialidade;
        this.data = data;
        this.hora = hora;
        this.custo = custo;
    }

    public void setCusto(double custo) {
        this.custo = custo;
    }

    public void setData(String data) {
        this.data = data;
    }

    public void setEspecialidadeId(Especialidade especialidade) {
        this.especialidade = especialidade;
    }

    public void setHora(String hora) {
        this.hora = hora;
    }

    public void setMedicoId(Medico medico) {
        this.medico = medico;
    }

    public void setNumeroConsulta(int numeroConsulta) {
        this.numeroConsulta = numeroConsulta;
    }

    public void setUtente(Utente utente) {
        this.utente = utente;
    }

    public double getCusto() {
        return custo;
    }

    public String getData() {
        return data;
    }

    public Especialidade getEspecialidade() {
        return especialidade;
    }

    public String getHora() {
        return hora;
    }

    public Medico getMedico() {
        return medico;
    }

    public int getNumeroConsulta() {
        return numeroConsulta;
    }

    public Utente getUtente() {
        return utente;
    }
    
    @Override
    public String toString(){
        StringBuilder b = new StringBuilder();
        b.append("\n\n\tID:"+getNumeroConsulta()+"\n");
        b.append("\tEspecialidade:"+getEspecialidade().getNome()+"\n");
        b.append("\tMédico:"+getMedico().getNomeProprio()+" "+ getMedico().getApelido() +"\n");
        b.append("\tData:"+getData()+" às "+getHora() +"\n");
        b.append("\tUtente:"+getUtente().getNomeProprio()+" "+ getUtente().getApelido()+"\n");
        b.append("\n\n");
        return b.toString();
    }
}
